//
//  HPopupView.h
//  popview
//
//  Created by 王 文彬 on 13-11-2.
//  Copyright (c) 2013年 重庆芬尼尔科技发展有限公司. All rights reserved.
//

#import <UIKit/UIKit.h>

typedef NS_ENUM(NSInteger, HPopupViewAnimation) {
    HPopupViewAnimationFade,              //从中点渐隐的放大/缩小
    HPopupViewAnimationSlideLeftToRight,  //从左边出现，从右边消失
};

typedef void (^HPopupViewWillShowBlock)(UIView* view);
typedef BOOL (^HPopupViewButtonClickedBlock)(UIView* view, NSInteger buttonIndex);

@interface HPopupView : UIView
{
    HPopupViewWillShowBlock      _willShowBlock;
    HPopupViewButtonClickedBlock _buttonClickedBlock;
}


/**!
 @abstract 视图出现和消失时候的动画类型
 */
@property (nonatomic, assign) HPopupViewAnimation animation;

/**!
 @abstract 视图动画的时间
 */
@property (nonatomic, assign) NSTimeInterval animationTime;

/**!
 @abstract 视图是否有遮罩
 @discussion true=有，false=没有
 */
@property (nonatomic, assign) BOOL isTransparent;

/**!
 @abstract title的文字
 */
@property (nonatomic, strong) NSString* titleText;

/**!
 @abstract title的字体
 */
@property (nonatomic, strong) UIFont* titleFont;

/**!
 @abstract 内容的文字
 */
@property (nonatomic, strong) NSString* contentText;

/**!
 @abstract 内容的字体
 */
@property (nonatomic, strong) UIFont* contentFont;

/**!
 @abstract 取消按钮的文字
 */
@property (nonatomic, strong) NSString* cancelButtonTitle;

/**!
 @abstract 添加其他按钮的文字
 @discussion 每个添加进来的文字，都会生成一个按钮
 */
//- (void)addButton:(UIButton *)button;
- (void)addButtonTitlt:(NSString *)title;

/**!
 @abstract 设定视图将要显示时候，被调用的块
 @discussion 可以通过这个方法将要加入视图的子元素加入
*/
- (void)setWillShowBlock:(HPopupViewWillShowBlock)block;

/**!
 @abstract 设定当视图上的按钮被点击时，被调用的块
 */
- (void)setButtonClickedBlock:(HPopupViewButtonClickedBlock)block;

/**!
 @abstract 显示视图
 */
- (void)show;

@end
